<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script type="text/javascript">
        window.onload=function()
        {
            //创建Promise对象
            const p=new Promise((resolve,reject)=>{
                setTimeout(()=>{
                    resolve("用户数据");
                    //reject("获取出错");
                },1000)
            });

            //调用then方法
            const reason=p.then(function(value){
                console.log(value);
                //1.非promise类型的属性
                //return 123;
                //2.是promise对象,那么状态由内部内部promise状态和值决定
                /*
                return new Promise((resolve,reject)=>{
                    //如果成功状态
                    //resolve("OK");
                    //如果失败状态
                    reject("error");
                });
                */
                //3.抛出错误，这样也会返回失败的值和状态
                throw Error("出错了");
            },function(reason){
                console.warn(reason);
            });
            //then方法的返回对象时Promis()对象，而对象状态由回调函数的执行结果决定
            //成功状态返回值resolved 在谷歌中是fulfilled 返回值是undefined
            //失败状态返回值rejected 在谷歌中是pending 返回值是undefined

            //1.如果回调函数中返回的结果是非promise类型的属性，状态为成功,返回值为对象的成功的值
            console.log(reason);
        };
    </script>
</head>
<body>
    
</body>
</html>